Testing of data retention latches in circuit devices

ABSTRACT

A circuit device having data retention latches utilizes a test interface and system test controller to control one or more components of the circuit device to ensure proper conditions for testing the data retention latches. The data retention latches each include a scan component that is part of a scan chain, a first latching component that is powered in a first voltage domain and a second latching component that is powered in a second voltage domain, where one of the voltage domains can be effectively shut down when the circuit device is placed in a low-voltage mode. The system test controller can control a scan controller used to scan test data in and out of the scan chain. The system test controller further can control a power controller used to manage a power down sequence and a power up sequence so as to ensure that the data retention latches are not placed in spurious states.

FIELD OF THE DISCLOSURE

The present application relates generally to circuit devices and moreparticularly to testing circuit devices.

BACKGROUND

Circuit devices often implement data retention latches (also commonlyreferred to as retention flip-flops) to retain data during a low powerstate. However, due to their specific operating characteristics,conventional systems for testing (i.e., debugging) the data retentionlatches typically implement a relatively large number of pins having acustom arrangement and require complex test sequences driven to thesepins. Moreover, this type of testing often makes it difficult to test acircuit device in the field as a debugging system suitable to interfacewith the custom pin interface and the complex test sequences typicallyare unavailable outside of the manufacturer's facility. Accordingly, animproved technique for testing circuit devices implementing dataretention latches would be advantageous.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure may be better understood, and its numerousfeatures and advantages made apparent to those skilled in the art byreferencing the accompanying drawings.

FIG. 1 is a block diagram illustrating an exemplary circuit devicehaving integrated data retention testing capabilities in accordance withat least one embodiment of the present disclosure.

FIG. 2 is a circuit diagram illustrating an exemplary implementation ofa data retention latch in accordance with at least one embodiment of thepresent disclosure.

FIG. 3 is a block diagram illustrating an exemplary implementation of ascan controller of the circuit device of FIG. 1 in accordance with atleast one embodiment of the present disclosure.

FIG. 4 is a block diagram illustrating an exemplary implementation of apower controller of the circuit device of FIG. 1 in accordance with atleast one embodiment of the present disclosure.

FIG. 5 is a block diagram illustrating an exemplary circuit devicehaving multiple testable circuit components in accordance with at leastone embodiment of the present disclosure.

FIG. 6 is a flow diagram illustrating an exemplary method for testingdata retention latches in a circuit device in accordance with at leastone embodiment of the present disclosure.

The use of the same reference symbols in different drawings indicatessimilar or identical items.

DETAILED DESCRIPTION

In accordance with one aspect of the present disclosure, a circuitdevice includes a circuit component having a plurality of data retentionlatches. Each data retention latch has a scan chain component, a firstlatching component operated at a first voltage and a second latchingcomponent operated at a second voltage different than the first voltage.The circuit device further includes a scan controller having a firstinput to receive a scan test control signal, a first output coupled tothe circuit component to provide a first scan chain data to the scanchain components of the plurality of data retention latches responsiveto the scan test control signal, a second input coupled to the circuitcomponent to receive a second scan chain data from the scan chaincomponents of the plurality of data retention latches based on the firstscan chain data, and a second output to provide the second scan chaindata. The circuit device also includes a power controller having aninput to receive a power control signal, first output to selectivelyprovide the first voltage responsive to the power control signal, and asecond output to selectively provide the second voltage responsive tothe power control signal. The circuit device additionally includes atest interface having a first input to receive scan test data and anoutput to provide test results data. The circuit device further includesa system test controller coupled to the test interface. The system testcontroller including a first input coupled to the second output of thescan controller to receive the second scan chain data, wherein the testresults data includes the second scan chain data, a first output coupledto a third input of the scan controller to provide the scan test data,wherein the scan test data includes the first scan chain data, a secondoutput coupled to the first input of the scan controller to provide thescan test control signal, and a third output coupled to the input of thepower controller to provide the power control signal.

In accordance with another aspect of the present disclosure, a methodincludes receiving, at a test interface of a circuit device, scan testdata. The method further includes providing a first voltage and a secondvoltage to a sequence of data retention latches. Each data retentionlatch has a corresponding scan chain component of a scan chain, a firstlatching component operated at the first voltage, and a second latchingcomponent operated at the second voltage. The method further includesshifting a first scan test data into the scan chain subsequent toproviding the first voltage and the second voltage. The methodadditionally includes terminating provision of the first voltage to thefirst latching components of the plurality of data retention latchessubsequent to shifting the scan test data into the scan chain. Themethod further includes providing the first voltage to the firstlatching components of the plurality of data retention latchessubsequent to terminating provision of the first voltage and shifting asecond scan test data out of the scan chain subsequent to providing thefirst voltage, wherein the second scan test data is based on the firstscan test data.

In accordance with yet another aspect of the present disclosure, adevice includes a test interface to receive scan test data and a scanchain including a sequence of data retention latches. Each dataretention latch having a corresponding scan chain component of a scanchain, a first latching component operated at a first voltage, and asecond latching component operated at a second voltage. The devicefurther includes means for providing the first voltage and the secondvoltage to the sequence of data retention latches and means for shiftinga first scan test data into the scan chain subsequent to providing thefirst voltage and the second voltage. The device also includes means forterminating provision of the first voltage to the first latchingcomponents of the plurality of data retention latches subsequent toshifting the scan test data into the scan chain and means for providingthe first voltage to the second latching components of the plurality ofdata retention latches subsequent to terminating provision of the firstvoltage. The device additionally includes means for shifting a secondscan test data out of the scan chain subsequent to providing the firstvoltage, wherein the second scan test data is based on the first scantest data.

FIGS. 1-6 illustrate exemplary techniques for implementing testingcapabilities for data retention latches in a circuit device. A circuitdevice having data retention latches utilizes a test interface andsystem test controller to control one or more components of the circuitdevice to ensure proper conditions for testing the data retentionlatches. The data retention latches, in one embodiment, each include ascan component that is part of a scan chain, a first latching componentthat is powered in a first voltage domain and a second latchingcomponent that is powered in a second voltage domain, where one of thevoltage domains can be effectively shut down when the circuit device isplaced in a low-voltage mode. Accordingly, the system test controllercan control a scan controller used to scan test data in and out of thescan chain and a clock controller used to control which clock (e.g., thedevice clock or an eternally-provided test clock) is provided to thedata retention latches. The system test controller further can control apower controller used to manage a power down sequence and a power upsequence so as to ensure that the data retention latches are not placedin spurious states. Further, in at least one embodiment, the system testcontroller and test interface are substantially compliant with one ormore scan testing interface standards, such as the Institute ofElectronic and Electrical Engineers (IEEE) 1149.1 Joint Test ActionGroup standard (hereinafter, the “IEEE 1149.1 standard” or the “JTAGstandard”). This use of a standard test interface and the integration ofthe test control circuitry into the circuit device facilitates devicedebugging in the field as a debug system utilizing a standard testinterface can be used for debugging purposes.

Referring to FIG. 1, an exemplary system 100 utilizing an integrateddata retention latch testing scheme is illustrated in accordance with atleast one embodiment of the present disclosure. The system 100 includesa circuit device 102 and a debug system 104. The circuit device 102 caninclude, for example, any of a variety of integrated circuit deviceshaving data retention latches, such as, for example, a microcontrolleror microprocessor. The debug system 104 can include, for example, apersonal computer or other processing device utilizing debug software106 or, alternately, debug hardware for the purposes of testing thecircuit device 102.

The circuit device 102 includes a test interface 108, a system testcontroller 110, a circuit component 112 to be tested, a scan controller114, a clock controller 116, a power controller 118 and a controlregister 120. The components of the circuit device 102 can beimplemented as hardware, firmware, software, or combinations thereof. Toillustrate, in one embodiment, the components of the circuit device 102are implemented as logic to perform the functions described herein.

The test interface 108 can include a custom interface or the testinterface 108 can include an interface that is substantially compliantwith one or more test scan interface standards, such as the IEEE 1149.1JTAG standard. For ease of discussion, the test interface 108 isdescribed herein in the context of the IEEE 1149.1 JTAG standard.Accordingly, the test interface 108 includes a plurality of externalJTAG inputs, including an input to receive a test clock (TCK) signal122, an input to receive a test mode select (TMS) signal 124, an inputto receive a test data in (TDI) signal 126, and an input to receive atest reset (TRST) signal 128. The test interface 108 further includes aninternal input (not shown) to receive output test data from the systemtest controller 100, an external output to provide a test data out (TDO)signal 130 based on the output test data, and an internal output (notshown) to provide the TCK signal 122, the TMS signal 124, the TDI signal126 and the TRST signal 128 to the system test controller 110. In atleast one embodiment, the external inputs and external output of thetest interface 108 are implemented at a set of input/output (I/O) pinsof the circuit device 102.

The system test controller 110 includes a plurality of inputs to receivethe TCK signal 122, the TMS signal 124, the TDI signal 126 and the TRSTsignal 128 from the test interface 108 and an input to receive controlinformation represented by a bit value or bit values stored in thecontrol register 120. The system test controller 110 further includes anoutput to provide a scan test control signal 132, an output to provide aclock control signal 134, and an output to provide a power controlsignal 136. In one embodiment, the control information represented bythe scan test control signal 132, the clock control signal 134, and thepower control signal 136 are based on the mode of operation indicated bythe control register 120 and based on the test information representedby the TCK signal 122, the TMS signal 124, the TDI signal 126 and theTRST signal 128.

The scan controller 114 has an input to receive the scan test controlsignal 132 and a plurality of outputs, including an output to provide ascan chain input (SCI) signal 138 and an output to provide a test enablesignal 140. The scan controller 114 further includes an input to receivea scan chain output (SCO) signal 142. The scan controller 114 furtherincludes an output (not shown) to provide the data represented by theSCO signal 142 to the system test controller 110. As described in detailherein, in one embodiment, the SCI signal 138 and test enable signal 140are based on the scan test control signal 132.

The clock controller 116 includes an input to receive the clock controlsignal 134 and an input to receive a device clock (CLK) signal 144. Theclock controller 116 further includes an output to provide a clock (CLK)signal 146, where the CLK signal 146 includes either the device CLKsignal 144 or the TCK signal 122 based on the clock control signal 134.

The power controller 118 includes an input to receive the power controlsignal 136 and a plurality of outputs, including an output to provide apower down (PD) signal 148, an output to provide a first voltage 150(V_(CC)) and an output to provide a second voltage 152 (V_(DD)). Asdescribed in detail herein, in one embodiment, the PD signal 148 and thefirst voltage 150 are based on the power control signal 134.

The circuit component 112 includes combinational logic 154 and non-dataretention sequential logic (not shown) powered by the first voltage 150.The circuit component 112 further includes a plurality of data retentionlatches (DRLs), such as data retention latches 156 and 158, to betested. Each of the data retention latches 156 and 158 includes aplurality of inputs, including a data input to receive a data signal(e.g., data signal 160), a test input to receive a scan chain test input(TI) signal, an enable input to receive the TE signal 140, a clock inputto receive the CLK signal 146, a power down input to receive the PDsignal 148, and voltage inputs to receive the first voltage 150 and thesecond voltage 152. Each of the data retention latches 156 and 158further includes a data output to provide a value latched at thecorresponding data retention latch.

As described in detail with reference to FIG. 2, each of the dataretention latches 156 and 158, in one embodiment, includes a scan chaincomponent to permit scan chain testing of the data retention latch, afirst latch component powered by the first voltage 150 and a secondlatch component powered by the second voltage 152. Thus, the firstvoltage 150 can be reduced or shut off, thereby powering down thecombinational logic 154 and the first latch component of each of thedata retention latches, while the second latch component of each of thedata retention latches continues to retain the currently latched valueas long as the second voltage 152 remains.

Further, as illustrated by FIG. 1, the data retention latches can beconfigured to permit scan chain testing. In the depicted example, thetest input of the data retention latch 156 is connected to receive theSCI signal 138 and the data output of the data retention latch 156 isconnected to an input of the combinational logic 154. Further, the datainput of the data retention latch 158 is connected to an output of thecombinational logic 154 and the test input of the data retention latch158 is connected to the data output of the data retention latch 156 sothat the data retention latches 156 and 158 form a scan chain fortesting purposes. As described herein with reference to FIG. 3, the dataretention latches of the circuit component 112 can be arranged inmultiple scan chains for testing purposes.

In the depicted example, the control register 120 can include aplurality of bit fields including: an enable bit to enable or disabledata retention latch testing, component bits (e.g., component 1 andcomponent 2) to indicate which component of the circuit device 102 is tobe tested, data retention test (DRT) mode bits to indicate which stageof testing is to be performed, pattern generation bits to indicate whichbit pattern of a plurality of predetermined bit patterns is to be usedto generate a test pattern, a pattern selection bit to indicate whetherto use an external test pattern supplied as the TDI signal 126 or to usea test pattern generated internally, and a status bit to indicatewhether a faulty data retention latch is detected during debugging.

Upon entering an operational mode, the system test controller 110configures the scan test control signal 132 so as to indicate that thescan controller 114 is to be disabled. In response, the scan controller114 deasserts the TE signal 140 and gates the SCI signal 138. The systemtest controller 110 also configures the clock control signal 134 so asto indicate that the clock controller 116 is to function in anoperational mode. In response, the clock controller 116 provides arepresentation of the device CLK signal 144 as the output CLK signal146. The system controller 110 additionally configures the power controlsignal 118 so as to indicate that the power controller 118 is to enablefull operation. In response, the power controller 118 provides both thefirst voltage 150 (V_(CC)) and the second voltage 152 (V_(DD)) anddisables certain low-power features, such as disabling power gating bydeasserting the PD signal 148. With the TE signal 140 and the PD signal148 unasserted in the operational mode, the data path of the circuitcomponent 112 including the data retention latches 156 and 158 and thecombinational logic 154 operates in response to data inputs and theclock signal 146 and scan chain testing via the TI inputs is disabled.

In a test operation of the circuit device 102, an interface of the debugsystem 104 is connected to the test interface 108 and the debug system104 provides the TCK signal 122, the TMS signal 124, the TDI signal 126and the TRST signal 128. Upon entering a test mode (directed via, forexample, a control value of the control register 120), the system testcontroller 110 executes a testing sequence for debugging the dataretention latches of the circuit component 112.

During the first stage of the testing sequence (e.g., DRT=00), thesystem test controller 110 configures the clock control signal 134 so asto indicate that the clock controller 116 is to bypass the device CLKsignal 144. In response, the clock controller 116 selects the TCK signal122 (provided as, for example, a signal of the clock control signal 134)and provides a representation of the TCK signal 122 as the output CLKsignal 146. During the first stage, the system test controller 110 alsoconfigures the scan test control signal 132 so as to indicate that thescan controller 114 is to be enabled. In response, the scan controller114 asserts the TE signal 140 and scans in a test pattern as the SCIsignal 138 to the scan chain represented by the data retention latches156 and 158. In one embodiment, the system test controller 110 (or,alternately, the scan controller 114) automatically generates the testpattern based on a particular pattern indicated by the patterngeneration bits of the control register 120. To illustrate, the systemtest controller 110 can be configured to provide a repeating sequence of0011 in response to a value of 00 for the pattern generation bits, arepeating sequence of 0101 in response to a value of 01 for the patterngeneration bits, a repeating sequence of 1001 in response to a value of10 for the pattern generation bits, or a repeating sequence of 1111 inresponse to a value of 11 for the pattern generation bits. Alternately,the test pattern can be based on the TDI signal 126 provided by thedebug system 104 (and provided to the scan controller 114 as, forexample, a signal of the scan test control signal 132). The system testcontroller 110 further configures the power control signal 136 so as todirect the power controller to provide both the first voltage 150 andthe second voltage 152 to the data retention latches 156 and 158 duringthe first stage.

After the scan in of the test pattern into the scan chain is completed,the system test controller 110 initiates the second stage of the test(e.g., DRT=01). During the second stage, the system test controller 110configures the power control signal 136 so as to initiate a power downsequence at the power controller 118. In response, the power controller118 asserts the PD signal 148 and reduces or eliminates the firstvoltage 150 (V_(CC)) while maintaining the second voltage 152(V_(DD))(or reducing it to level sufficient to retain the data in thesecond latch components), thereby shutting down the combinational logic154 and the first latch components of the data retention latches 156 and158 while allowing the second latch components of the data retentionlatches 156 and 158 to maintain their latched values. The system testcontroller 110 also configures the clock control signal 134 to directthe clock controller 116 to hold the CLK signal 146 low or to gate theCLK signal 146.

During a third stage of the test (e.g., DRT=10), the system testcontroller 110 configures the power control signal 136 so as to initiatea power up sequence at the power controller 118. In response, the powercontroller 118 turns on the supply of the first voltage 150 (V_(CC)) anddeasserts the PD signal 148, thereby re-enabling the first latchcomponent of each of the data retention latches 156 and 158.

During a fourth stage of the test (e.g., DRT=11), the system controller110 configures the clock control signal 134 so as to direct the clockcontroller 116 to start providing the output CLK signal 146 again. Thesystem controller 110 also configures the scan test control signal 132so as to indicate that the scan chain data is to be shifted out. Inresponse, the scan controller 114 shifts out the scan chain data as theSCO signal 142 and provides the output scan chain data to the systemtest controller 110.

In one embodiment, the system test controller 110 (or, alternately, thescan controller 114) is configured to debug the data retention latchesbased on the output scan chain data. To illustrate, the system testcontroller 110 can implement a two-bit comparator to compare each bit ofthe output scan chain data with the corresponding bit of a predetermineddebug bit sequence. In the event that there is a mismatch, the systemtest controller 110 can set the status bit of the control register 120to indicate that there is a faulty data retention latch. In an alternateembodiment, the output scan chain data is provided to the debug system104 via the test interface 108 as the TDO signal 130 and the debuggingsoftware 106 performs the comparison of the output scan chain data tothe predetermined debug bit sequence to determine which of the dataretention latches may be faulty.

Referring to FIG. 2, an exemplary implementation of the data retentionlatches 156 and 158 of FIG. 1 is illustrated in accordance with at leastone embodiment of the present disclosure and referred to herein as dataretention latch 200. In the illustrated example, the data retentionlatch 200 includes a scan chain component 202, a first latch component204 and a second latch component 206. The first latch component 204 ispowered by the first voltage 150 (V_(CC))(FIG. 1) and the scan chaincomponent 202 and the second latch component are powered by the secondvoltage 152 (V_(DD))(FIG. 1).

The scan chain component 202 includes a test input to receive the TEsignal 210, a data input to receive a data signal 212, and a pluralityof transistors 214, 216, 218, 220, 222, 224, 226 and 228, where thetransistors 214, 216, 218 and 220 are p-type transistors and thetransistors 222, 224, 226, and 228 are n-type transistors.

The transistor 214 includes a control electrode to receive the TE signal140, a first current-carrying electrode coupled to a first voltagereference (e.g., V_(DD)), and a second current-carrying electrode. Thetransistor 216 includes a control electrode to receive an invertedrepresentation of the TE signal (hereinafter, the TEB signal 240), afirst current-carrying electrode coupled to the first voltage reference,and a second current-carrying electrode. The transistor 218 includes acontrol electrode to receive the data signal 212, a firstcurrent-carrying electrode coupled to the second current-carryingelectrode of the transistor 214, and a second current-carrying electrodecoupled to a node 230. The transistor 220 includes a control electrodeto receive the TI signal 210, a first current-carrying electrode coupledto the second current-carrying electrode of the transistor 216, and asecond current-carrying electrode coupled to the node 230.

The transistor 222 includes a control electrode to receive the datasignal 212, a first current-carrying electrode coupled to the node 230,and a second current-carrying electrode. The transistor 224 includes acontrol electrode to receive the TI signal 210, a first current-carryingelectrode coupled to the node 230, and a second current-carryingelectrode. The transistor 226 includes a control electrode to receivethe TEB signal 240, a first current-carrying electrode coupled to thesecond current-carrying electrode of the transistor 222, and a secondcurrent-carrying electrode coupled to a second voltage reference (e.g.,GND). The transistor 228 includes a control electrode to receive the TEsignal 140, a first current-carrying electrode coupled to the secondcurrent-carrying electrode of the transistor 224 and a secondcurrent-carrying electrode coupled to the second voltage reference.

The second latch component 202 includes pass gates 231, 232 and 234having gate inputs to receive the CLK signal 146 (FIG. 1) and aninverted representation of the CLK signal 146 (hereinafter, the CLKBsignal 246). The second latch component 202 further includes inverters236 and 238. The pass gate 231 has a data input coupled to the node 230and a data output coupled to a node 242. The inverter 236 has an inputcoupled to the node 242 and an output coupled to a node 244 and inverter236 has an input coupled to the node 244 and an output. The pass gate232 has a data input coupled to the output of the inverter 236 and anoutput coupled to the node 242. The pass gate 234 has an input coupledto the node 244 and an output coupled to a node 250. The node 250, inturn, is coupled to the data output (Q) of the data retention latch 200and provides the output data signal 270.

The first latch component 204 includes pass gates 252 and 254 havinggate inputs to receive the PD signal 148 and an inverted representationof the PD signal 148 (hereinafter, the PDB signal 248) and a pass gate25 having gate inputs to receive the CLK signal 146 and the CLKB signal246. The first latch component 204 further includes inverters 258 and260 and n-type transistor 262. The pass gate 252 has a data inputcoupled to the node 250 and a data output coupled to a node 264. Thepass gate 254 has a data input coupled to the node 264 and a data outputcoupled to a node 266. The pass gate 256 has a data input coupled to thenode 266 and a data output coupled to the node 264. The inverter 258 hasan input coupled to the node 264 and an output. The inverter 260 has aninput coupled to the output of the inverter 258 and an output coupled tothe node 266. The transistor 148 has a control electrode to receive thePD signal 148, a first current-carrying electrode coupled to the node250 and a second current-carrying electrode coupled to the secondvoltage reference (e.g., GND).

During functional operation, the TE signal 140 and the PD signal 148 areunasserted and the TEB signal 240 and the PDB signal 248 are asserted.Consequently, the data signal 212 is latched into the first datacomponent 204 and the second data component 204 in response to the CLKsignal 146 and the CLKB signal 246 assuming that the data retentionlatch 200 isn't faulty.

During the scan in stage of testing, the TE signal 140 and the PDBsignal 248 are asserted and the TEB signal and the PD signal 148 areunasserted. Consequently, the TI signal 210 is latched into the firstlatch component 204 and the second latch component 206 in response tothe CLK signal 146 and the CLKB signal 246 and the latched value isprovided as the output data signal 270 assuming that the data retentionlatch 200 isn't faulty.

During the power down stage of testing, the first voltage is reduced oreliminated, thereby shutting down the components of the first latchcomponent 204. Further, the PD signal 148 and the TE signal 140 areasserted and the PDB signal 248 and the TEB signal 240 are unasserted.Consequently, the data latched at the second latch component 206 isretained during the power down stage assuming that the data retentionlatch 200 isn't faulty.

During the power up stage of testing, the first voltage is reapplied,thereby powering the components of the first latch component 204. ThePDB signal 248 and the TE signal 140 are asserted and the PD signal 148and the TEB signal 240 are unasserted. Consequently, the latched outputat the node 250 is latched by the first latch component 204 assumingthat the data retention latch 200 isn't faulty.

During the scan out phase of testing, the latched data value is providedas the data output signal 270 to the test input (TI signal 210) of thenext data retention latch of the scan chain. In the event that the dataretention latch 200 is the last latch in the scan chain, the output datasignal 270 is provided as the SCO signal 142 (FIG. 1).

Referring to FIG. 3, an exemplary implementation of the scan controller114 for sequenced scan chain testing is illustrated in accordance withat least one embodiment of the present disclosure. The scan controller114 includes a control module 302, a test pattern generation module 304,and a plurality of chain select multiplexers 306, 308 and 310. In theillustrated example, the data retention latches of the device component112 (FIG. 1) are arranged in a plurality of scan chains, including scanchains 312, 314 and 316.

The control module 302 includes an input to receive the value of thecontrol register 120 (either directly or as part of the scan testcontrol signal 132, FIG. 1), including the pattern generation bits, theenable bit, the DRT mode bits, and the pattern selection bit. Thecontrol module 302 further includes an output to provide the TE signal140, and a mux select signal 320 provided to the chain selectmultiplexers 306, 208 and 310.

In the illustrated embodiment, the scan chain select multiplexers 306,308 and 310 are used either to provide separate test patterns to each ofthe scan chains 312, 314, and 316 or to chain together scan chains byproviding the scan chain result data from one scan chain as the testpattern for the next scan chain in the sequence. To illustrate, the scantest data signal 326 is input to the scan chain 312 and the resultingscan chain result signal 328 is output by the scan chain 312. The scanchain result signal 328 then can be provided as the SCO signal 142 (FIG.1), or the scan chain result signal 328 can be routed via the chainselect multiplexer 308 as the scan test data signal 330 input to thescan chain 314. In a similar manner, the scan chain result signal 332output by the scan chain 314 can be provided as the SCO signal 142 or itcan be routed via the chain select multiplexer 310 as the scan test datasignal 334 input to the scan chain 316. The scan chain result signal 336output by the scan chain 316 likewise can be provided as the SCO signal142 or it can be routed to another scan chain (not shown).

As also illustrated by FIG. 3, the pattern generation module 304 can beused to provide automatic test pattern generation internal to thecircuit device 102. For ease of illustration, FIG. 3 depicts animplementation wherein either an internally generated test patternsignal 322 or an externally-supplied test pattern signal 324 (suppliedas, for example, the TDI signal 126 of FIG. 1) is provided as the scantest data signal 326 to the scan chain 312 via the chain selectmultiplexer 306. In the event that the enable bit indicates that dataretention testing is enabled and the pattern selection bit indicatesthat an internally generated test pattern is to be generated, thepattern generation module 304 generates scan chain test data based on atest pattern indicated by the pattern generation bits. As describedabove, the pattern generation module 304 can generate a test patternthat represents a repeating bit sequence selected based on the patterngeneration bits. The resulting test pattern is output as test patternsignal 322.

Referring to FIG. 4, an exemplary implementation of the power controller118 is illustrated in accordance with at least one embodiment of thepresent disclosure. In the depicted example, the power controller 118includes a switch box 402 and mode select circuitry 404.

The mode select circuitry includes multiplexers 414, 416, 418 and 420,each multiplexer having a select input to receive the DRT mode bits ofthe control register 120. The multiplexer 414 receives a func_iso signal422 representative of isolation control during functional operation anda DRT_iso signal 424 representative of isolation control during DRToperation and selects between the two signals 422 and 424 based on theDRT mode bits. The multiplexer 416 receives a func_pg signal 426representative of power gating control during functional operation and aDRT_pg signal 428 representative of power gating control during DRToperation and selects between the two signals 426 and 428 based on theDRT mode bits. The multiplexer 418 receives a func_short signal 430representative of pull assist control during functional operation and aDRT_short signal 432 representative of pull assist control during DRToperation and selects between the two signals 430 and 432 based on theDRT mode bits. The multiplexer 420 receives a func_swc signal 434representative of switch control during functional operation and aDRT_swc signal 436 representative of switch control during DRT operationand selects between the two based on the DRT mode bits.

As described above, due to the multiple voltage domains in which thedata retention latches operate, it typically is desirable to carefullymanage the power down sequence and the power up sequence of the dataretention latches during a testing operation so as to prevent spuriousresults that occur due to disturbances at the data retention latches.Accordingly, the switch box 402 includes an isolation controller 406, apower gating controller 408, a pull assist controller 410 and a switchcontroller 412 to control the power down sequence and the power upsequence so as to reduce or eliminate spurious results.

The isolation controller 406 has an input to receive the output signalof the multiplexer 414. In response to the control signal output by themultiplexer 414 indicating a power down sequence, the control isolationcontroller 406 initiates an isolation process for the data retentionlatches of the circuit component 112 (FIG. 1). In response to thecontrol signal output by the multiplexer 414 indicating a power upsequence, the control isolation controller 406 terminates the isolationprocess for the data retention latches of the circuit component 112.

The power gating controller 408 has an input to receive the outputsignal of the multiplexer 416. In response to the control signal outputby the multiplexer 416 indicating the power down sequence, the powergating controller 408 initiates a power gating process for the dataretention latches of the circuit component 112 by asserting the PDsignal 148 (FIG. 1). In response to the control signal output by themultiplexer 416 indicating the power up sequence, the power gatingcontroller 408 terminates the power gating process for the dataretention latches of the circuit component 112 by deasserting the PDsignal 148.

The pull assist controller 410 has an input to receive the output signalof the multiplexer 418. In response to the control signal output by themultiplexer 418 indicating the power down sequence, the pull assistcontroller 410 initiates a pull assist process for the data retentionlatches of the circuit component 112. In response to the control signaloutput by the multiplexer 418 indicating the power up sequence, the pullassist controller 410 terminates the pull assist process for the dataretention latches of the circuit component 112.

The switch controller 412 has an input to receive the output signal ofthe multiplexer 420. In response to the control signal output by themultiplexer 420 indicating the power down sequence, the switchcontroller 412 enables switching for the data retention latches of thecircuit component 112. In response to the control signal output by themultiplexer 420 indicating the power up sequence, the switch controller412 disables switching for the data retention latches of the circuitcomponent 112.

In one embodiment, the power down stage is implemented in the followingsequence: initiation of the isolation process; initiation of the powergating process; enabling switching; initiation of the pull assistprocess; and termination of the power gating process. Further, in oneembodiment, the power up stage is implemented in the following sequence:termination of the power gating process; termination of the pull assistprocess; disabling switching; termination of the power gating process;and termination of the isolation process. Other sequences for the powerdown stage and the power up stage may be utilized without departing fromthe scope of the present disclosure.

Referring to FIG. 5, another exemplary implementation of a circuitdevice 502 utilizing embedded data retention testing is illustrated inaccordance with at least one embodiment of the present disclosure. Aswith the circuit device 102 of FIG. 1, the circuit device 502 includesthe test interface, the system test controller 110 and the controlregister 110. Further, the circuit device 502 includes multiple devicecomponents (e.g., device components 504 and 506) that are scan chaintestable for data retention latch debugging purposes. Accordingly, thesystem test controller 110 acts as an arbiter between the scancontroller 514, the clock controller 516 and the power controller 518associated with the device component 504 and the scan controller 524,the clock controller 526, and the power controller 528 associated withthe device component 506. As illustrated by FIG. 1, the control registercan include one or more device component bits that can be set toindicate which device component is under test.

Referring to FIG. 6, an exemplary method for debugging a circuit devicehaving dual-voltage domain data retention latches is illustrated inaccordance with at least one embodiment of the present disclosure. Themethod 600 includes connecting an interface of a debug system to thetest interface of a circuit device and selecting a component of thecircuit device for scan chain testing at block 602. In one embodiment,the test interface is substantially compliant with an industry standard,such as the IEEE 1149.1 JTAG standard.

At block 604, a test pattern and source are selected. In one embodiment,the debugging system is the source of a predetermined test pattern. Inan alternate embodiment, the circuit device generates a repeating bitsequence as the test pattern. At block 606, the circuit device enables adata retention testing (DRT) mode and bypasses the device clock by usinga test clock supplied by the debugging system. The test clock isprovided to the scan chain under test. At block 608, the circuit deviceshifts in the selected test pattern as scan chain data into the scanchain under test based on either the rising edge or falling edge of thetest clock.

At block 610, the circuit device initiates a power down sequence for thecircuit device. The power down sequence includes terminating the supplyof voltage to the combinational logic, other types of sequential logic,and a first latch component of each of the data retention latches in thescan chain. Further, voltage continues to be supplied to a second latchcomponent and scan chain component of the data retention latches of thescan chain. At block 612, the method 600 includes initiating a power upsequence for the circuit device. The power up sequence includesreinitiating the supply of voltage to the combinational logic, othertypes of sequential logic, and the first latch components of the dataretention latches under test.

At block 614, the data in the scan chain is shifted out using the testclock and at block 616 the output scan chain results are compared with apredetermined debug data sequence to determine whether a data retentionlatch has faulty operation. As discussed above, the comparison of theoutput scan chain results with the debug data sequence may be performedby the circuit device itself (using, e.g., a two-bit comparator), or thecomparison may be performed by hardware or software at the debuggingsystem connected to the test interface of the circuit device.

Other embodiments, uses, and advantages of the disclosure will beapparent to those skilled in the art from consideration of thespecification and practice of the disclosure disclosed herein. Thespecification and drawings should be considered exemplary only, and thescope of the disclosure is accordingly intended to be limited only bythe following claims and equivalents thereof.

1. A circuit device comprising: a circuit component having a pluralityof data retention latches, each data retention latch having a scan chaincomponent, a first latching component operated at a first voltage and asecond latching component operated at a second voltage different thanthe first voltage; a scan controller having a first input to receive ascan test control signal, a first output coupled to the circuitcomponent to provide a first scan chain data to the scan chaincomponents of the plurality of data retention latches responsive to thescan test control signal, a second input coupled to the circuitcomponent to receive a second scan chain data from the scan chaincomponents of the plurality of data retention latches based on the firstscan chain data, and a second output to provide the second scan chaindata; a power controller having an input to receive a power controlsignal, a first output to selectively provide the first voltageresponsive to the power control signal, and a second output toselectively provide the second voltage responsive to the power controlsignal; a test interface having a first input to receive scan test dataand an output to provide test results data; a system test controllercoupled to the test interface, the system test controller including afirst input coupled to the second output of the scan controller toreceive the second scan chain data, wherein the test results dataincludes the second scan chain data, a first output coupled to a thirdinput of the scan controller to provide the scan test data, wherein thescan test data includes the first scan chain data, a second outputcoupled to the first input of the scan controller to provide the scantest control signal, and a third output coupled to the input of thepower controller to provide the power control signal.
 2. The circuitdevice of claim 1, wherein: the test interface further includes a secondinput to receive a first clock signal; the circuit device furthercomprises a clock controller having a first input to receive the firstclock signal, a second input to receive a clock control signal, and anoutput coupled to the circuit component to selectively provide one ofthe first clock signal or a second clock signal based on the clockcontrol signal; and the system test controller further comprises afourth output coupled to the second input of the clock controller toprovide the clock control signal.
 3. The circuit device of claim 2,wherein: the test interface further includes a third input to receive amode select signal; and the scan controller is to provide the scan testcontrol signal, the power control signal and the clock control signalresponsive to the mode select signal.
 4. The circuit device of claim 1,wherein: a first subset of the plurality of data retention latches arearranged in a first scan chain and a second subset of the plurality ofdata retention latches are arranged in a second scan chain; and the scancontroller includes a first output to provide a third scan data to aninput of the first scan chain, an input to receive a fourth scan datafrom an output of the first scan chain, an output to provide the fourthscan data to an input of the second scan chain and an input to receive afifth scan data from an output of the second scan chain.
 5. The circuitdevice of claim 1, wherein the test interface is substantially compliantwith a test scan interface standard.
 6. The circuit device of claim 5,wherein the test scan interface standard includes the IEEE 1149.1 JTAGstandard.
 7. The circuit device of claim 1, further comprising: acontrol register having a first bit field to store a stage value,wherein a stage of scan chain testing at the circuit device iscontrolled by the stage value.
 8. A method comprising: receiving, at atest interface of a circuit device, scan test data; providing a firstvoltage and a second voltage to a sequence of data retention latches,each data retention latch having a corresponding scan chain component ofa scan chain, a first latching component operated at the first voltage,and a second latching component operated at the second voltage; shiftinga first scan test data into the scan chain subsequent to providing thefirst voltage and the second voltage; terminating provision of the firstvoltage to the first latching components of the sequence of dataretention latches subsequent to shifting the scan test data into thescan chain; providing the first voltage to the first latching componentsof the sequence of data retention latches subsequent to terminatingprovision of the first voltage; and shifting a second scan test data outof the scan chain subsequent to providing the first voltage, wherein thesecond scan test data is based on the first scan test data.
 9. Themethod of claim 8, further comprising: receiving, at the test interface,a test clock signal; and controlling the shifting of the first scan testdata into the scan chain and the shifting of the second scan test dataout of the scan chain based on the test clock signal.
 10. The method ofclaim 8, further comprising: continuing provision of the second voltagebetween the shifting of the first scan test data into the scan chain andshifting the second scan test data out of the scan chain.
 11. The methodof claim 8, further comprising: comparing the second scan test data withdebug data to determine whether at least one of the data retentionlatches has failed.
 12. The method of claim 8, wherein the testinterface is substantially compliant with a test scan interfacestandard.
 13. The method of claim 12, wherein the test scan interfacestandard includes the IEEE 1149.1 JTAG standard.
 14. The method of claim8, wherein terminating provision of the first voltage further includesterminating provision of the first voltage to combinational logicassociated with the sequence of data retention latches.
 15. The methodof claim 14, wherein terminating provision of the first voltage furtherincludes terminating provision of the first voltage to sequential logicassociated with the sequence of data retention latches.
 16. The methodof claim 8, further comprising: generating, at the circuit device, atest pattern based on a repeating bit sequence, wherein the first scantest data is based on the test pattern.
 17. The method of claim 8,further comprising: accessing, at the circuit device, a controlregister, wherein the control register includes a first bit field toindicate a stage of scan chain testing for the circuit device.
 18. Adevice comprising: a test interface to receive scan test data; a scanchain comprising a sequence of data retention latches, each dataretention latch having a corresponding scan chain component of a scanchain, a first latching component operated at a first voltage, and asecond latching component operated at a second voltage; means forproviding the first voltage and the second voltage to the sequence ofdata retention latches; means for shifting a first scan test data intothe scan chain subsequent to providing the first voltage and the secondvoltage; means for terminating provision of the first voltage to thefirst latching components of the plurality of data retention latchessubsequent to shifting the scan test data into the scan chain; means forproviding the first voltage to the second latching components of theplurality of data retention latches subsequent to terminating provisionof the first voltage; and means for shifting a second scan test data outof the scan chain subsequent to providing the first voltage, wherein thesecond scan test data is based on the first scan test data.
 19. Thesystem of claim 18, further comprising: means for controlling theshifting of the first scan test data into the scan chain and theshifting of the second scan test data out of the scan chain based on atest clock signal.
 20. The system of claim 18, further comprising: meansfor generating a test pattern, the first scan test data based on thetest pattern.